package com.fyakm.daodejing.simple;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;

public class SpeciesPool {
    private static List<Species> speciesPool = new ArrayList<>();

    // 向物种池中添加物种的方法
    public static void addSpecies(Species species) {
        speciesPool.add(species);
    }

    // 获取物种池中所有物种的方法
    public static List<Species> getAllSpecies() {
        return speciesPool;
    }

    // 获取随机物种的方法，用于在进化控制类中模拟找亲本等需要随机选取物种的操作
    public static Species getRandomSpecies() {
        if (speciesPool.isEmpty()) {
            return null;
        }
        Random random = new Random();
        int randomIndex = random.nextInt(speciesPool.size());
        return speciesPool.get(randomIndex);
    }

    // 可以添加更多与管理物种池相关的方法，比如移除某个物种等                
    // 例如移除指定物种的方法示例（如果有相应需求的话）
    public static void removeSpecies(Species species) {
        speciesPool.remove(species);
    }
}